#pragma warning disable 108
using System;
using System.Runtime.InteropServices;
using System.Collections.Generic;
using Cephei;
using Cephei.Core;
using Cephei.Core.Generic;
using Microsoft.FSharp.Core;
namespace Cephei.QL.Termstructures.Yield
{
    /// <summary> 
	/// ! Fits a discount function to the form \f$ d(t) = \exp^{-r t}, \f$ where the zero rate \f$r\f$ is defined as \f[ r \equiv c_0 + (c_0 + c_1)*(1 - exp^{-\kappa*t}/(\kappa t) - c_2 exp^{ - \kappa t}. \f] See: Nelson, C. and A. Siegel (1985): "Parsimonious modeling of yield curves for US Treasury bills." NBER Working Paper Series, no 1594.
	/// </summary>
    [Guid ("02204A6B-4C48-477e-A5E0-42DA44B8B0E3"),ComVisible(true)]
	public interface INelsonSiegelFitting 
	{
		///////////////////////////////////////////////////////////////
        // Methods
        //
    }   

    /// <summary> 
	/// ! Fits a discount function to the form \f$ d(t) = \exp^{-r t}, \f$ where the zero rate \f$r\f$ is defined as \f[ r \equiv c_0 + (c_0 + c_1)*(1 - exp^{-\kappa*t}/(\kappa t) - c_2 exp^{ - \kappa t}. \f] See: Nelson, C. and A. Siegel (1985): "Parsimonious modeling of yield curves for US Treasury bills." NBER Working Paper Series, no 1594. Factory
	/// </summary>
   	[ComVisible(true)]
    public interface INelsonSiegelFitting_Factory 
    {
        ///////////////////////////////////////////////////////////////
        // Factory methods
        //
        /// <summary> 
		/// 
		/// </summary>
	    INelsonSiegelFitting Create ();
    }
}

